#!/bin/bash
# Lanceur macOS de RKCORP Mail : utilise Java 17+ s'il est installé,
# sinon télécharge une fois un Java 21 (Eclipse Temurin) dans ~/.rkmail/jre.
APP_DIR="$(cd "$(dirname "$0")/.." && pwd)"
JAR="$APP_DIR/Resources/RKMail.jar"
JRE="$HOME/.rkmail/jre"
JAVA=""

if [ -x "$JRE/Contents/Home/bin/java" ]; then
  JAVA="$JRE/Contents/Home/bin/java"
elif /usr/libexec/java_home -v 17+ >/dev/null 2>&1; then
  JAVA="$(/usr/libexec/java_home -v 17+)/bin/java"
fi

if [ -z "$JAVA" ]; then
  osascript -e 'display dialog "Premier lancement : RKMail va télécharger Java (environ 50 Mo, une seule fois)." buttons {"Annuler", "Continuer"} default button "Continuer" with title "RKMail" with icon note' >/dev/null 2>&1 || exit 0
  if [ "$(uname -m)" = "arm64" ]; then ARCH=aarch64; else ARCH=x64; fi
  TMP="$(mktemp -d)"
  osascript -e 'display notification "Téléchargement de Java en cours, RKMail va s ouvrir tout seul." with title "RKMail"'
  if ! curl -fsSL -o "$TMP/jre.tar.gz" "https://api.adoptium.net/v3/binary/latest/21/ga/mac/$ARCH/jre/hotspot/normal/eclipse"; then
    osascript -e 'display alert "RKMail" message "Impossible de télécharger Java. Vérifiez la connexion internet puis relancez RKMail."'
    rm -rf "$TMP"
    exit 1
  fi
  rm -rf "$JRE"
  mkdir -p "$JRE"
  tar -xzf "$TMP/jre.tar.gz" -C "$JRE" --strip-components 1
  rm -rf "$TMP"
  JAVA="$JRE/Contents/Home/bin/java"
fi

mkdir -p "$HOME/.rkmail"
# cache de démarrage (Java 19+, ignoré par les versions plus anciennes)
exec "$JAVA" -XX:+IgnoreUnrecognizedVMOptions -XX:+AutoCreateSharedArchive -XX:SharedArchiveFile="$HOME/.rkmail/rkmail.jsa" -Drkmail.app="$(dirname "$APP_DIR")" -Xdock:name="RKCORP Mail" -Xdock:icon="$APP_DIR/Resources/rkmail.icns" -Xmx768m -jar "$JAR" "$@"
